package com.usian.wemedia.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.usian.model.admin.dtos.NewsAuthDto;
import com.usian.model.common.dtos.PageResponseResult;
import com.usian.model.common.dtos.ResponseResult;
import com.usian.model.media.dtos.WmNewsDto;
import com.usian.model.media.dtos.WmNewsPageReqDto;
import com.usian.model.media.pojos.WmNews;
import com.usian.model.media.pojos.WmNewsVo;

import java.util.List;

public interface WmNewsService extends IService<WmNews> {
    ResponseResult findAll(WmNewsPageReqDto dto);

    /***
     * 自媒体文章发布
     * @param wmNews
     * @param isSubmit
     * @return
     */
    ResponseResult saveNews(WmNewsDto wmNews, Short isSubmit);

    /***
     * 根据id查询
     * @param newId
     * @return
     */
    ResponseResult findWmNewsById(Integer newId);

    /***
     * 根据id删除
     * @param id
     * @return
     */
    ResponseResult delNews(Integer id);

    /**
     * 上下架
     * @param dto
     * @return
     */
    ResponseResult downOrUp(WmNewsDto dto);
    /**
     * 查询需要发布的文章id列表
     * @return
     */
    List<Integer> findRelease();


    /**
     * 分页查询文章信息
     * @param dto
     * @return
     */
    public PageResponseResult findListAndPage(NewsAuthDto dto);

    /**
     * 查询文章详情
     * @param id
     * @return
     */
    public WmNewsVo findWmNewsVo(Integer id);
}

